The state of a tab is a combination of
#TabBarGadget_Selected
,#TabBarGadget_Disabled
and#TabBarGadget_Checked
. With the binary operators|
(or) and&
(and) it is possible to change or return the current state of a tab. In this example you can see how it works:
XIncludeFile "TabBarGadget.pbi" Enumeration #Window #Gadget #Text EndEnumeration OpenWindow(#Window, 0, 0, 600, 200, "TabBarGadget", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered) TabBarGadget(#Gadget, 10, 10, WindowWidth(#Window)-20, #TabBarGadget_DefaultHeight, #TabBarGadget_MultiSelect|#TabBarGadget_CheckBox|#TabBarGadget_BottomLine, #Window) AddTabBarGadgetItem(#Gadget, #PB_Default, "selected") AddTabBarGadgetItem(#Gadget, #PB_Default, "checked") AddTabBarGadgetItem(#Gadget, #PB_Default, "disabled") AddTabBarGadgetItem(#Gadget, #PB_Default, "selected and checked") AddTabBarGadgetItem(#Gadget, #PB_Default, "checked and disabled") TextGadget(#Text, 10, 50, WindowWidth(#Window)-20, 30, "") TextGadget(#PB_Any, 10, 80, WindowWidth(#Window)-20, 30, "Move the mouse over the tabs") SetTabBarGadgetItemState(#Gadget, 0, #TabBarGadget_Selected) SetTabBarGadgetItemState(#Gadget, 1, #TabBarGadget_Checked) SetTabBarGadgetItemState(#Gadget, 2, #TabBarGadget_Disabled) SetTabBarGadgetItemState(#Gadget, 3, #TabBarGadget_Selected|#TabBarGadget_Checked) SetTabBarGadgetItemState(#Gadget, 4, #TabBarGadget_Checked|#TabBarGadget_Disabled) Define State.i, Text.s Repeat Select WaitWindowEvent() Case #PB_Event_CloseWindow End Case #PB_Event_Gadget Select EventGadget() Case #Gadget Text = "Item state: " State = GetTabBarGadgetItemState(#Gadget, #TabBarGadgetItem_Event) If State & #TabBarGadget_Selected : Text + "Selected " : EndIf If State & #TabBarGadget_Disabled : Text + "Disabled " : EndIf If State & #TabBarGadget_Checked : Text + "Checked " : EndIf SetGadgetText(#Text, Text) EndSelect EndSelect